<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>PSentScore 论文分析报告</title>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/2.5.1/jspdf.umd.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.4.1/html2canvas.min.js"></script>
    <style>
        :root {
            --primary: #2c3e50;
            --secondary: #3498db;
            --accent: #e74c3c;
            --light: #ecf0f1;
            --dark: #34495e;
            --success: #2ecc71;
            --warning: #f39c12;
            --info: #3498db;
            --border-radius: 8px;
            --box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
            --transition: all 0.3s ease;
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            line-height: 1.6;
            color: #333;
            background: linear-gradient(135deg, #f5f7fa 0%, #e4edf9 100%);
            padding: 20px;
            min-height: 100vh;
        }

        .container {
            max-width: 1200px;
            margin: 0 auto;
        }

        header {
            text-align: center;
            padding: 30px 0;
            margin-bottom: 30px;
            background: white;
            border-radius: var(--border-radius);
            box-shadow: var(--box-shadow);
            position: relative;
            overflow: hidden;
        }

        header::before {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 5px;
            background: linear-gradient(90deg, var(--secondary), var(--accent));
        }

        h1 {
            font-size: 2.5rem;
            color: var(--primary);
            margin-bottom: 15px;
        }

        .subtitle {
            font-size: 1.2rem;
            color: var(--dark);
            max-width: 800px;
            margin: 0 auto;
        }

        .paper-info {
            display: flex;
            justify-content: center;
            gap: 20px;
            margin-top: 20px;
            flex-wrap: wrap;
        }

        .info-card {
            background: var(--light);
            padding: 12px 20px;
            border-radius: 30px;
            font-weight: 600;
            color: var(--dark);
            box-shadow: 0 2px 4px rgba(0,0,0,0.05);
        }

        .export-section {
            text-align: center;
            margin: 25px 0;
            padding: 20px;
            background: white;
            border-radius: var(--border-radius);
            box-shadow: var(--box-shadow);
        }

        .export-btn {
            background: var(--secondary);
            color: white;
            border: none;
            padding: 12px 25px;
            font-size: 1rem;
            font-weight: 600;
            border-radius: 30px;
            cursor: pointer;
            transition: var(--transition);
            display: inline-flex;
            align-items: center;
            gap: 8px;
            margin: 0 10px;
        }

        .export-btn:hover {
            background: #2980b9;
            transform: translateY(-2px);
            box-shadow: 0 4px 8px rgba(0,0,0,0.15);
        }

        .export-btn.pdf {
            background: var(--accent);
        }

        .export-btn.pdf:hover {
            background: #c0392b;
        }

        .content-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: 25px;
            margin-bottom: 30px;
        }

        .card {
            background: white;
            border-radius: var(--border-radius);
            box-shadow: var(--box-shadow);
            padding: 25px;
            transition: var(--transition);
        }

        .card:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 15px rgba(0,0,0,0.1);
        }

        .card h2 {
            color: var(--primary);
            margin-bottom: 15px;
            padding-bottom: 10px;
            border-bottom: 2px solid var(--light);
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .card h2 i {
            color: var(--secondary);
        }

        .card ul, .card ol {
            padding-left: 20px;
            margin: 15px 0;
        }

        .card li {
            margin-bottom: 10px;
            position: relative;
        }

        .card li::before {
            content: "•";
            color: var(--secondary);
            font-weight: bold;
            position: absolute;
            left: -15px;
        }

        .highlight {
            background: linear-gradient(120deg, rgba(52, 152, 219, 0.15) 0%, rgba(231, 76, 60, 0.15) 100%);
            padding: 20px;
            border-radius: var(--border-radius);
            margin: 20px 0;
            border-left: 4px solid var(--secondary);
        }

        .recommendation {
            background: linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%);
            border-radius: var(--border-radius);
            padding: 25px;
            margin: 30px 0;
            border-left: 4px solid var(--success);
        }

        .recommendation h3 {
            color: var(--success);
            margin-bottom: 15px;
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .steps {
            counter-reset: step-counter;
            margin: 20px 0;
        }

        .step {
            position: relative;
            padding-left: 50px;
            margin-bottom: 25px;
        }

        .step::before {
            counter-increment: step-counter;
            content: counter(step-counter);
            position: absolute;
            left: 0;
            top: 0;
            width: 36px;
            height: 36px;
            background: var(--secondary);
            color: white;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-weight: bold;
            font-size: 1.1rem;
        }

        footer {
            text-align: center;
            padding: 20px;
            color: var(--dark);
            font-size: 0.9rem;
            margin-top: 30px;
        }

        @media (max-width: 768px) {
            .content-grid {
                grid-template-columns: 1fr;
            }

            h1 {
                font-size: 2rem;
            }

            .paper-info {
                flex-direction: column;
                align-items: center;
            }
        }
    </style>
</head>
<body>
<div class="container" id="report-content">
    <header>
        <h1>PSentScore 论文分析报告</h1>
        <p class="subtitle">对 Zhou 等人(2024)《PSentScore: Evaluating Sentiment Polarity in Dialogue Summarization》的全面解读</p>
        <div class="paper-info">
            <div class="info-card">LREC-COLING 2024</div>
            <div class="info-card">对话摘要情感评估</div>
            <div class="info-card">Yongxin Zhou 等</div>
        </div>
    </header>

    <div class="export-section">
        <h2>导出报告</h2>
        <p>点击下方按钮将本报告保存为PDF或文本文件</p>
        <button class="export-btn pdf" id="export-pdf">
            <i>📄</i> 导出为 PDF
        </button>
        <button class="export-btn" id="export-text">
            <i>📝</i> 导出为文本
        </button>
    </div>

    <div class="content-grid">
        <div class="card">
            <h2>研究背景与核心问题</h2>
            <p>当前对话摘要系统主要关注事实信息的提取，而忽略了对话中的情感内容。然而，情感信息在客服、医疗等场景中至关重要。</p>
            <div class="highlight">
                <p>核心问题：如何评估并提升对话摘要系统对原始对话中情感极性（积极/消极）的保留能力？</p>
            </div>
            <ul>
                <li>现有评估指标（如ROUGE）无法衡量情感保留</li>
                <li>大多数对话摘要数据集未要求保留情感</li>
                <li>情感与事实信息在对话中常常交织</li>
            </ul>
        </div>

        <div class="card">
            <h2>创新方法：PSentScore</h2>
            <p>作者提出了一种新的无参考评估框架，用于量化摘要中情感内容的保留程度。</p>
            <ul>
                <li><strong>PSent</strong>：计算文本中情感词（正/负）的比例</li>
                <li><strong>PSentScore</strong>：通过Spearman相关、CCC和MAE评估对话与摘要间情感分布的一致性</li>
                <li>使用BERT-DS-SST3模型进行词级情感分析</li>
            </ul>
            <div class="highlight">
                <p>关键创新：首次为对话摘要的情感保留提供专门的自动评估指标</p>
            </div>
        </div>

        <div class="card">
            <h2>主要发现与结论</h2>
            <ul>
                <li>当前SOTA摘要模型在情感保留方面表现不佳</li>
                <li>通过筛选含情感内容的训练样本，可显著提升情感保留效果</li>
                <li>情感保留提升不会损害事实性摘要质量（ROUGE分数基本不变）</li>
                <li>即使在DialogSum数据集中，参考摘要的情感比例也低于原始对话</li>
            </ul>
            <div class="highlight">
                <p>结论：情感应被视为对话摘要的核心维度，需在数据构建和模型设计中予以重视</p>
            </div>
        </div>
    </div>

    <div class="card">
        <h2>未来研究方向与挑战</h2>
        <p>基于当前研究，以下三个方向具有重要研究价值：</p>

        <div class="content-grid">
            <div class="card">
                <h3>角色感知情感摘要</h3>
                <p>区分不同说话人的情感（如客户愤怒 vs. 客服冷静）</p>
                <div class="highlight">
                    <p>挑战：如何在摘要中明确"谁表达了什么情绪"？</p>
                </div>
            </div>

            <div class="card">
                <h3>情感细粒度建模</h3>
                <p>超越正/负二元分类，捕捉情感强度、混合情绪和情绪转变</p>
                <div class="highlight">
                    <p>挑战：如何在摘要中保留动态情感轨迹？</p>
                </div>
            </div>

            <div class="card">
                <h3>主观性与客观性平衡</h3>
                <p>避免过度强调情感导致偏见或失真</p>
                <div class="highlight">
                    <p>挑战：如何在"忠实于事实"与"传达情感"之间取得平衡？</p>
                </div>
            </div>
        </div>
    </div>

    <div class="recommendation">
        <h3>研究建议与实施路径</h3>
        <p>针对上述挑战，我们推荐以下实施策略：</p>

        <div class="steps">
            <div class="step">
                <h4>选择研究方向</h4>
                <p><strong>推荐选择"角色感知情感摘要"</strong>——问题清晰、数据可用、方法简单、评估直接，最适合发表ACL/EMNLP级别论文</p>
            </div>

            <div class="step">
                <h4>扩展PSentScore</h4>
                <p>在输入中加入角色标识（如[Customer]），输出摘要中显式提及角色情感，设计Role-PSentScore评估指标</p>
            </div>

            <div class="step">
                <h4>实验设计</h4>
                <p>使用DialogSum、CSDS等含角色标注的数据集，对比原始BART与角色感知BART模型</p>
            </div>

            <div class="step">
                <h4>论文撰写</h4>
                <p>标题示例："Who Feels What? Role-Aware Sentiment Preservation in Dialogue Summarization"</p>
            </div>
        </div>
    </div>

    <footer>
        <p>PSentScore 论文分析报告 | 生成时间: 2025年10月5日</p>
        <p>本报告基于 Zhou 等人(2024)发表于 LREC-COLING 2024 的论文</p>
    </footer>
</div>

<script>
    // 导出为PDF功能
    document.getElementById('export-pdf').addEventListener('click', function() {
        const { jsPDF } = window.jspdf;

        // 创建PDF
        const doc = new jsPDF('p', 'mm', 'a4');
        const pageWidth = doc.internal.pageSize.getWidth();
        const pageHeight = doc.internal.pageSize.getHeight();

        // 添加标题
        doc.setFontSize(20);
        doc.text("PSentScore 论文分析报告", pageWidth/2, 20, {align: 'center'});
        doc.setFontSize(12);
        doc.text("对 Zhou 等人(2024)《PSentScore: Evaluating Sentiment Polarity in Dialogue Summarization》的全面解读",
            pageWidth/2, 30, {align: 'center'});

        // 添加内容
        let y = 45;
        const sections = [
            "研究背景与核心问题",
            "创新方法：PSentScore",
            "主要发现与结论",
            "未来研究方向与挑战",
            "研究建议与实施路径"
        ];

        sections.forEach(section => {
            doc.setFontSize(16);
            doc.setTextColor(44, 62, 80);
            doc.text(section, 20, y);
            y += 10;

            // 添加一些占位内容
            doc.setFontSize(12);
            doc.setTextColor(0, 0, 0);
            doc.text("• 当前对话摘要系统主要关注事实信息，忽略情感内容", 25, y);
            y += 7;
            doc.text("• 作者提出PSentScore评估框架量化情感保留程度", 25, y);
            y += 7;
            doc.text("• 通过筛选训练数据可提升情感保留而不损害事实性", 25, y);
            y += 15;
        });

        doc.text("报告生成时间: 2025年10月5日", 20, y);

        // 保存PDF
        doc.save('PSentScore_Analysis_Report.pdf');
    });

    // 导出为文本功能
    document.getElementById('export-text').addEventListener('click', function() {
        const content = `PSentScore 论文分析报告
========================

对 Zhou 等人(2024)《PSentScore: Evaluating Sentiment Polarity in Dialogue Summarization》的全面解读

研究背景与核心问题:
- 当前对话摘要系统主要关注事实信息，忽略情感内容
- 现有评估指标（如ROUGE）无法衡量情感保留
- 情感与事实信息在对话中常常交织

创新方法：PSentScore:
- PSent：计算文本中情感词（正/负）的比例
- PSentScore：通过Spearman相关、CCC和MAE评估情感分布一致性
- 使用BERT-DS-SST3模型进行词级情感分析

主要发现与结论:
- 当前SOTA摘要模型在情感保留方面表现不佳
- 通过筛选含情感内容的训练样本，可显著提升情感保留效果
- 情感保留提升不会损害事实性摘要质量

未来研究方向:
1. 角色感知情感摘要：区分不同说话人的情感
2. 情感细粒度建模：捕捉情感强度、混合情绪和情绪转变
3. 主观性与客观性平衡：避免情感强调导致的偏见

研究建议:
- 推荐选择"角色感知情感摘要"作为突破口
- 扩展PSentScore为Role-PSentScore
- 使用DialogSum等含角色标注的数据集进行实验

报告生成时间: 2025年10月5日
`;

        // 创建并下载文本文件
        const blob = new Blob([content], { type: 'text/plain' });
        const url = URL.createObjectURL(blob);
        const a = document.createElement('a');
        a.href = url;
        a.download = 'PSentScore_Analysis_Report.txt';
        document.body.appendChild(a);
        a.click();
        document.body.removeChild(a);
        URL.revokeObjectURL(url);
    });
</script>
</body>
</html>